main(){
  // 定义支付类
  Payment alipay = Alipay();
  alipay.pay(100);
  // 定义微信支付类
  Payment wechatPay = WechatPay();
  wechatPay.pay(100);
  // 定义银联支付类
  Payment unionPay = UnionPay();
  unionPay.pay(100);
}

//抽象类，就是定义类的标准，规范
abstract class Payment {
  // 定义抽象方法
  void pay(double amount);
}
//实现类 ，实现抽象类的方法

class Alipay implements Payment{
  @override
  void pay(double amount) {
    print('支付宝支付$amount元');
  }
}

// 定义微信支付类
class WechatPay implements Payment{
  @override
  void pay(double amount) {
    print('微信支付$amount元');
  }
}

class UnionPay implements Payment{
  @override
  void pay(double amount) {
    print('银联支付$amount元');
  }
}


